// // Reflect 对象

// const obj = {
//     foo: '123',
//     bar: '456'
// }

// // 监听对象操作  使用Reflect
// const proxy = new Proxy(obj, {
//     get (target, property) {
//         console.log('watch logic~');
//         return Reflect.get(target, property)
//     }
// })

// console.log(proxy.foo);


const obj = {
    name: 'zce',
    age: 18
}

// console.log('name' in obj);
// console.log(delete obj['age']);
// // 获取对象中的所有属性名
// console.log(Object.keys(obj));

// 统一对象的处理方法  避免 操作符 方法 等混杂使用
console.log(Reflect.has(obj, 'name'));
console.log(Reflect.deleteProperty(obj, 'age'));
console.log(Reflect.ownKeys(obj));